import ssl
# ssl._create_default_https_context = ssl._create_unverified_context
from qcloudsms_py import SmsSingleSender
from qcloudsms_py.httpclient import HTTPError
from django.conf import settings


def send_sms_single(phone_num, template_id, template_param_list):
    """
    单条发送短信
    :param phone_num: 手机号
    :param template_id: 腾讯云短信模板ID
    :param template_param_list: 短信模板所需参数列表，例如:【验证码：{1}，描述：{2}】，则传递参数 [888,666]按顺序去格式化模板
    :return:
    """
    appid = settings.TENCENT_SMS_APPID  # 自己应用ID
    appkey = settings.TENCENT_SMS_APPKEY  # 自己应用Key
    sms_sign = settings.TENCENT_SMS_SIGN  # 自己腾讯云创建签名时填写的签名内容（使用公众号的话这个值一般是公众号全称或简称）
    sender = SmsSingleSender(appid, appkey)
    try:
        response = sender.send_with_param(86, phone_num, template_id, template_param_list, sign=sms_sign)
    except HTTPError as e:
        response = {'result': 1000, 'errmsg': "网络异常发送失败"}
    return response


# def send_sms_multi(phone_num_list, template_id, param_list):
#     """
#     批量发送短信
#     :param phone_num_list:手机号列表
#     :param template_id:腾讯云短信模板ID
#     :param param_list:短信模板所需参数列表，例如:【验证码：{1}，描述：{2}】，则传递参数 [888,666]按顺序去格式化模板
#     :return:
#     """
#     appid = 112142311
#     appkey = "8cc5b87123y423423412387930004"
#     sms_sign = "Python之路"
#     sender = SmsMultiSender(appid, appkey)
#     try:
#         response = sender.send_with_param(86, phone_num_list, template_id, param_list, sign=sms_sign)
#     except HTTPError as e:
#         response = {'result': 1000, 'errmsg': "网络异常发送失败"}
#     return response

#
# if __name__ == '__main__':
#     result1 = send_sms_single("18761661318", 1044881, [666, ])
    # result2 = send_sms_single(["15131255089", "15131255089", "15131255089", ], 548760, [999, ])
    # print(result2)
